package com.gjintel.framework.register.model;


import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

@Entity
@Table(name = "t_reg_user_info")
@SuppressWarnings("serial")
public class RegisterUser implements Serializable {
	private String id; // ID
	private String loginName; // 登陆名
	//private String companyName;
	private String pwd; // 密码
	private String name; // 真实姓名
	private String type;// 登陆类型： 1.系统管理员 2. 业务管理员 3.审核人4.受理分配人5.项目负责人6.投标人 7.采购人
	private String tel;// 电话号码
	private String mobile;// 手机
	private String sex;// 性别
	private String email; // 邮箱
	private String post; // 邮编
	private String caCard;// CA 证书
	private String address; // 地址
	private Date createTime;// 创建时间
	private Date updateTime;// 更新时间
	private Integer flag;// 0.待审核 1.审核通过 2.审核未通过
	private String auditorId; // 审核人Id
	private String auditorName;
//	private String loginTypeCA;// Ca登陆方式
//	private String loginTypePWD;//密码方式登陆
	private Integer loginTypeCA=0;
	private Integer loginTypePWD=0;
	private String image01;
	private String image02;
	private String image03;
	private String image04;
	private String image05;
	private String reason;//审核不通过原因
//	private String forbidStartDate;//禁投开始时间
//	private String forbidEndDate;//禁投结束时间
	private Date forbidStartDate;//禁投开始时间
	private Date forbidEndDate;//禁投结束时间
	private String forbidReason;
	private String operatorId;
	private String operatorName;
	private String agent;//代理人
	private String agentPhone;
	private String bank;//银行开户行
	private String account;//银行账户:
	private String projectCategory;
	private String regisgterIdCard;
	private String agentIdCard;
	private Integer removeFlag=0;//删除标记   1:用户删除  2.用户封存
	private String societyCode;//社会信用代码
	private String category; //  注册人类别 1:自然人  2.企业

	@Id
	@GeneratedValue(generator = "UIDGenerator")
	@GenericGenerator(name = "UIDGenerator", strategy = "org.hibernate.id.UUIDHexGenerator")
	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	@Column(name = "LOGIN_NAME", insertable = true, updatable = true)
	public String getLoginName() {
		return loginName;
	}

	public void setLoginName(String loginName) {
		this.loginName = loginName;
	}
	
	public String getName() {
		return name;
	}

	@Column(name = "PASSWORD", insertable = true, updatable = true)
	public String getPwd() {
		return pwd;
	}

	public void setPwd(String pwd) {
		this.pwd = pwd;
	}

	public void setName(String name) {
		this.name = name;
	}

	@Column(name = "TYPE_", insertable = true, updatable = true)
	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public String getTel() {
		return tel;
	}

	public void setTel(String tel) {
		this.tel = tel;
	}

	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	@Column(name = "CATEGORY")
	public String getCategory() {
		return category;
	}

	public void setCategory(String category) {
		this.category = category;
	}


	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getPost() {
		return post;
	}

	public void setPost(String post) {
		this.post = post;
	}

	@Column(name = "CA_CARD", insertable = true, updatable = true)
	public String getCaCard() {
		return caCard;
	}

	public void setCaCard(String caCard) {
		this.caCard = caCard;
	}

	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	@Column(name = "CREATE_TIME", insertable = true, updatable = true)
	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	@Column(name = "UPDATE_TIME", insertable = true, updatable = true)
	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	@Column(name = "AUTH_FLAG", insertable = true, updatable = true)
	public Integer getFlag() {
		return flag;
	}

	public void setFlag(Integer flag) {
		this.flag = flag;
	}
	
	@Column(name = "AUDITOR_ID", insertable = true, updatable = true)
	public String getAuditorId() {
		return auditorId;
	}

	public void setAuditorId(String auditorId) {
		this.auditorId = auditorId;
	}


//	@Column(name = "COMPANY_NAME", insertable = true, updatable = true)
//	public String getCompanyName() {
//		return companyName;
//	}
//
//	public void setCompanyName(String companyName) {
//		this.companyName = companyName;
//	}
	
//	@Column(name = "LOGIN_TYPE_CA", insertable = true, updatable = true)
//	public String getLoginTypeCA() {
//		return loginTypeCA;
//	}
//
//	public void setLoginTypeCA(String loginTypeCA) {
//		this.loginTypeCA = loginTypeCA;
//	}
//	
//	@Column(name = "LOGIN_TYPE_PWD", insertable = true, updatable = true)
//	public String getLoginTypePWD() {
//		return loginTypePWD;
//	}
//
//	public void setLoginTypePWD(String loginTypePWD) {
//		this.loginTypePWD = loginTypePWD;
//	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}
	@Column(name = "IMAGE_01", insertable = true, updatable = true)
	public String getImage01() {
		return image01;
	}

	public void setImage01(String image01) {
		this.image01 = image01;
	}
	@Column(name = "IMAGE_02", insertable = true, updatable = true)
	public String getImage02() {
		return image02;
	}

	public void setImage02(String image02) {
		this.image02 = image02;
	}
	@Column(name = "IMAGE_03", insertable = true, updatable = true)
	public String getImage03() {
		return image03;
	}

	public void setImage03(String image03) {
		this.image03 = image03;
	}
	@Column(name = "IMAGE_04", insertable = true, updatable = true)
	public String getImage04() {
		return image04;
	}

	public void setImage04(String image04) {
		this.image04 = image04;
	}
	@Column(name = "IMAGE_05", insertable = true, updatable = true)
	public String getImage05() {
		return image05;
	}

	public void setImage05(String image05) {
		this.image05 = image05;
	}
	@Column(name = "AUDITOR_NAME", insertable = true, updatable = true)
	public String getAuditorName() {
		return auditorName;
	}

	public void setAuditorName(String auditorName) {
		this.auditorName = auditorName;
	}
	
	@Column(name = "OPERATOR_ID", insertable = true, updatable = true)
	public String getOperatorId() {
		return operatorId;
	}

	public void setOperatorId(String operatorId) {
		this.operatorId = operatorId;
	}

	@Column(name = "OPERATOR_NAME", insertable = true, updatable = true)
	public String getOperatorName() {
		return operatorName;
	}

	public void setOperatorName(String operatorName) {
		this.operatorName = operatorName;
	}
	@Column(name = "FORBID_START_DATE", insertable = true, updatable = true)
	public Date getForbidStartDate() {
		return forbidStartDate;
	}

	public void setForbidStartDate(Date forbidStartDate) {
		this.forbidStartDate = forbidStartDate;
	}
	

	@Column(name = "FORBID_REASON", insertable = true, updatable = true)
	public String getForbidReason() {
		return forbidReason;
	}
	
	public void setForbidReason(String forbidReason) {
		this.forbidReason = forbidReason;
	}
	
	@Column(name = "FORBID_END_DATE", insertable = true, updatable = true)
	public Date getForbidEndDate() {
		return forbidEndDate;
	}

	public void setForbidEndDate(Date forbidEndDate) {
		this.forbidEndDate = forbidEndDate;
	}
	@Column(name="AGENT")
	public String getAgent() {
		return agent;
	}

	public void setAgent(String agent) {
		this.agent = agent;
	}
   @Column(name="AGENT_PHONE")
	public String getAgentPhone() {
		return agentPhone;
	}

	public void setAgentPhone(String agentPhone) {
		this.agentPhone = agentPhone;
	}
   @Column(name="BANK")
	public String getBank() {
		return bank;
	}

	public void setBank(String bank) {
		this.bank = bank;
	}
   @Column(name= "ACCOUNT")
	public String getAccount() {
		return account;
	}

	public void setAccount(String account) {
		this.account = account;
	}
	
	@Transient
	public String getProjectCategory() {
		return projectCategory;
	}

	public void setProjectCategory(String projectCategory) {
		this.projectCategory = projectCategory;
	}
	
    @Column(name="AGENTIDCARD")
	public String getAgentIdCard() {
		return agentIdCard;
	}

	public void setAgentIdCard(String agentIdCard) {
		this.agentIdCard = agentIdCard;
	}
	@Column(name="REGISTERIDCARD")
	public String getRegisgterIdCard() {
		return regisgterIdCard;
	}

	public void setRegisgterIdCard(String regisgterIdCard) {
		this.regisgterIdCard = regisgterIdCard;
	}
	@Column(name="REMOVE_FLAG")
	public Integer getRemoveFlag() {
		return removeFlag;
	}

	public void setRemoveFlag(Integer removeFlag) {
		this.removeFlag = removeFlag;
	}

	@Column(name = "LOGIN_TYPE_CA", insertable = true, updatable = true)
	public Integer getLoginTypeCA() {
		return loginTypeCA;
	}

	public void setLoginTypeCA(Integer loginTypeCA) {
		this.loginTypeCA = loginTypeCA;
	}

	@Column(name = "LOGIN_TYPE_PWD", insertable = true, updatable = true)
	public Integer getLoginTypePWD() {
		return loginTypePWD;
	}

	public void setLoginTypePWD(Integer loginTypePWD) {
		this.loginTypePWD = loginTypePWD;
	}

	@Column(name="SOCIETYCODE")
	public String getSocietyCode() {
		return societyCode;
	}

	public void setSocietyCode(String societyCode) {
		this.societyCode = societyCode;
	}


}
